#ifndef PRINT_MATRIX
#define PRINT_MATRIX

#include "tmatrix.hpp"
#include <iostream>

template<typename T, ui8 col, ui8 row>
std::ostream& operator << (std::ostream & os, const tmatrix<T, col, row> & m) {
  // TODO: implement console print function for debugging use with this matrix
  os << '\t';
  for (ui8 i = 1; i < row; i++) {
    os << (i32)i << '\t';
  }
  os << '\n';
  for (ui8 i = 0; i < row; i++) {
    os << (i+1) << '\t';
    for (ui8 j = 0; j < col; j++) {
      os << m(i, j) << '\t';
    }
    os << '\n';
  }
  return os;
}


#endif